home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 08 System Utilities / TS484C.SFX / Autoboot tool < prev    next >
Text File  |  1992-10-05  |  20KB  |  140 lines

  1. ╘╚┼ ┴╒╘╧┬╧╧╘ ╘╧╧╠
  2.  
  3. ╘HE BOOT SECTOR IS A FEATURE WHICH IS SUPPOSED TO LAUNCH SOFTWARE OFF THE DISK AS SOON AS THE COMPUTER IS POWERED UP OR RESET.  ╚OWEVER, USING THIS HANDY FEATURE FOR YOUR OWN PURPOSES HAS BEEN VERY DIFFICULT.  ╘HE AUTOBOOT TOOL CONSISTS OF SEVERAL MODULES WHICH MAKES CREATION AND MANIPULATION OF BOOT SECTORS QUICK AND EASY.  ╨LEASE NOTE THAT USING ╘╚┼ ╙┼╥╓┴╬╘, A BOOT SECTOR MAY BE CREATED AND EXECUTED ON A DISK DRIVE OF ANY DEVICE NUMBER.
  4.  
  5. ╙╨┼├╔┴╠ ╬╧╘┼ TO 1581 USERS:  ╒SING THE ┴UTOBOOT ╘OOL, THE ROOT DIRECTORY WILL BE AUTOMATICALLY SELECTED.  ┴ BOOT SECTOR CANNOT EXIST UNDER A SUBDIRECTORY.
  6.  
  7. ┴╬┴╠┘┌┼ ┬╧╧╘ ╙┼├╘╧╥:
  8. ╘HIS FEATURE WILL DECODE THE BOOT SECTOR AND DISPLAY ITS RESULTS ON THE SCREEN.  ╞IRST, IT INDICATES IF A BOOT SECTOR IS PRESENT, IF THE BOOT SECTOR IS OCCUPIED BY A FILE, OR IF A "KILLED" BOOT SECTOR IS PRESENT.  ╔F A BOOT SECTOR EXIST, YOU'LL BE WARNED IF IT IS NOT PROTECTED FROM OVERWRITING (NOT PROTECTED BY ┬┴═).  ╔N THAT CASE USE THE ╨ROTECT ╙ECTOR(S) FEATURE TO PROTECT IT IF DESIRED.  ╔F A BOOT SECTOR OR KILLED BOOT SECTOR EXISTS, THE FOLLOWING INFORMATION IS PROVIDED:
  9.  
  10. 1) ┴DDITIONAL BOOT SECTORS INFO.  ╘HE ├128 BOOT SYSTEM INCLUDES AN OPTION TO READ ADDITIONAL BLOCKS OFF THE DISK AS PART OF THE BOOT AREA.  ╘HESE EXTRA SECTORS STARTS AT TRACK 1, SECTOR 1, AND CONTINUE ONWARD FROM THERE.  ┴ TOTAL OF 255 EXTRA BOOT SECTORS CAN BE SPECIFIED, MAKING THE BOOT AREA USE SEVERAL WHOLE TRACKS.  ╘HE ├128 BOOT FEATURE MAKES IT POSSIBLE TO PLACE THESE EXTRA BLOCKS ANYWHERE IN THE COMPUTER'S MEMORY.  ╚OW MANY EXTRA BLOCKS TO BE LOADED, THE ADDRESS AND MEMORY BANK WHERE THEY ARE PLACED ARE DISPLAYED.
  11. 2) ╠OAD ╨╥╟ FILE:  ┴ FILE NAME CAN BE SPECIFIED IN THE BOOT SECTOR, AND IF PRESENT, A ╨╥╟ FILE OF THAT NAME IS LOADED INTO BANK 0 ╥┴═.  ╘HE LOAD ADDRESS IS DETERMINED BY THE LOAD ADDRESS OF THE PROGRAM ITSELF.  ╘HE FILE NAME (IF ANY) WILL BE DISPLAYED ALONG WITH THE LOAD ADDRESS.  ╘HE LOAD ADDRESS MUST BE SOUGHT IN THE FILE ITSELF, AND IF THE FILE CAN'T BE READ, A ─╧╙ ERROR MESSAGE IS DISPLAYED INSTEAD OF THE LOAD ADDRESS.
  12. 3) ═╠ CODE START:  ╘HE BOOT SECTOR MUST CONTAIN SOME ═╠ CODE TO DETERMINE WHAT THE BOOT SECTOR IS SUPPOSED TO DO.  ╔T MAY BE A SIMPLE ╩═╨ INSTRUCTION (SIMILAR TO ┬┴╙╔├ ╙┘╙), OR AN ELABORATE ═╠ PROGRAM.  ╘HE START ADDRESS OF THE ═╠ CODE IS NOT FIXED; IT IS DETERMINED BY THE LENGTH OF THE BOOT MESSAGE (SEE BELOW) AND FILE NAME (ABOVE).  ╘HE START ADDRESS IS DISPLAYED AS AN OFFSET FROM THE START OF THE BOOT BUFFER IN THE COMPUTER'S MEMORY.  ╘HE BOOT BUFFER IS AT ADDRESS 2816 ($0B00) IN BANK 0.  ╘O CALCULATE THE REAL START ADDRESS OF THE ═╠ CODE, ADD THIS NUMBER TO THE OFFSET VALUE.
  13. 4) ┬OOT MESSAGE:  ┴N OPTIONAL MESSAGE CAN BE DISPLAYED WHEN A BOOT IS PERFORMED (┬╧╧╘ XXXX ...).  ╧FTEN, THE NAME OF THE PROGRAM TO BE BOOTED IS DISPLAYED, BUT THE MESSAGE MAY CONTAIN JUST ABOUT ANYTHING.  ╘HE MESSAGE MAY CONTAIN CONTROL CODES WHICH IS (BY THE BOOT SECTOR ANALYZER) DISPLAYED AS ╥╓╙ CHARACTERS.
  14. 5) ├OMMAND LINE:  ╒NLIKE THE OTHER INFORMATION ON THE ANALYZER SCREEN, THIS IS NOT AN INHERENT FEATURE OF ├128 BOOT SECTORS. ╥ATHER, BY USING A SMALL PIECE OF ═╠ CODE, IT IS POSSIBLE TO EXECUTE A ┬┴╙╔├ COMMAND LINE.  ╘╚┼ ╙┼╥╓┴╬╘S ┴UTOBOOT ╘OOL CONTAINS A PROVISION FOR CREATING A COMMAND LINE OF YOUR OWN FANCY.  ╙INCE THIS IS THE KIND OF BOOT SECTORS YOU ARE PROBABLY MOST OFTEN GOING TO CREATE YOURSELF, THE ┬┴╙╔├ COMMAND LINE (IF FOUND) IS INCLUDED HERE.  ╔NCIDENTALLY, THE SAME METHOD IS USED BY THE "AUTOBOOT MAKER" INCLUDED ON THE ╘EST/─EMO DISK SUPPLIED WITH ├OMMODORE DISK DRIVES.
  15.  
  16. ╚IT ANY KEY TO RETURN TO THE ┴UTOBOOT ╘OOL MENU.
  17.  
  18. ─╒═╨ ╙┼├╘╧╥:
  19. ─ISPLAYS THE CONTENTS OF TRACK 1 SECTOR 0 AS ┴╙├╔╔ CHARACTERS, REGARDLESS IF IT CONTAINS A BOOT SECTOR OR NOT.  ├ONTROL CHARACTERS ARE DISPLAYED AS ╥╓╙ CODES.  ┴ BOOT SECTOR HAS THE LETTERS "CBM" AS THE THREE FIRST CHARACTERS.  ╘HE ─UMP FEATURE MIGHT BE USEFUL FOR REVEALING THINGS ABOUT A BOOT SECTOR THAT WOULD OTHERWISE BE DIFFICULT TO DISCLOSE.  ┴LSO, IF THE BOOT SECTOR IS BLOCKED BY A PROGRAM, YOU MIGHT BE ABLE TO IDENTIFY THE PROGRAM WHICH CAUSES THE INTERFERENCE.
  20.  
  21. ╚IT ANY KEY TO RETURN TO THE ┴UTOBOOT ╘OOL MENU.
  22.  
  23. ═┴╦┼ ┬╧╧╘ ╙┼├╘╧╥:
  24. ╘HE OBJECTIVE HERE IS TO CREATE A DIRECT MODE ┬┴╙╔├ PROGRAM LINE TO BE EXECUTED UPON BOOTING.  ┴LL IMMEDIATE MODE ┬┴╙╔├ COMMANDS CAN BE USED, AND THE POSSIBILITIES ARE LIMITED BY IMAGINATION AND THE SIZE OF THE BOOT SECTOR.
  25.  
  26. ╒PON SELECTION OF ├REATE FROM THE ┴UTOBOOT ╘OOL MENU, YOU'RE WARNED IF A BOOT SECTOR IS ALREADY PRESENT ON THE DISK, OR IF THE BOOT SECTOR IS TAKEN BY A PROGRAM OR OTHER DATA.  ╔F YOU WISH TO PRESERVE AN ORIGINAL BOOT SECTOR, PLEASE USE THE ┬OOT ╘O ╞ILE FEATURE FIRST.
  27.  
  28. ┼NTERING THE BOOT MESSAGE:
  29. ╧PTIONALLY, YOU CAN ENTER A MESSAGE TO BE DISPLAYED UPON BOOT (┬╧╧╘╔╬╟ XXXX  ...).  ╘HERE ARE A TOTAL OF 239 CHARACTERS AVAILABLE FOR THE BOOT MESSAGE AND COMMAND LINE.  ┼VERY CHARACTER OF THE BOOT MESSAGE WILL STEAL SPACE FROM THE COMMAND LINE.  ╩UST PRESS ╥┼╘╒╥╬ WITHOUT ENTERING ANYTHING IF YOU DON'T WANT A BOOT MESSAGE.
  30.  
  31. ╨LEASE NOTE THAT YOU ARE NOT LIMITED TO PLAIN TEXT; CONTROL CHARACTERS MAY ALSO BE USED.  ╨LEASE REFER TO ┴PPENDIX ╞ FOR AN OVERVIEW OF THE CONTROL CHARACTERS AND HOW THEY ARE ENTERED.  ┴LSO PLEASE NOTE THAT YOUR COMPUTER IN MOST CASES WILL BE IN UPPERCASE/GRAPHICS MODE (ALIAS "CURSOR UP" MODE) WHEN THE BOOT MESSAGE IS DISPLAYED.  ╘EXT ENTERED AS LOWERCASE WILL APPEAR AS UPPERCASE, AND UPPERCASE CHARACTERS WILL APPEAR AS GRAPHIC SYMBOLS.  ┘OU MAY CIRCUMVENT THIS BY ENTERING A ╥╓╙ N AS THE FIRST CHARACTER.  ╘HIS WILL PUT THE COMPUTER INTO LOWERCASE MODE (ALSO CALLED "CURSOR DOWN" MODE) WHEN THE BOOT SECTOR IS EXECUTED.
  32.  
  33. ╨╠┼┴╙┼ ╬╧╘┼:  ╬┼╓┼╥ USE A ╥╓╙ @ IN YOUR BOOT SECTORS.  ┴ ╥╓╙ @ WILL YIELD AN ┴╙├╔╔ CODE OF ZERO WHICH WILL EFFECTIVELY TERMINATE THE STRING OR COMMAND LINE.  ═ALFUNCTION WILL BE INEVITABLE.
  34.  
  35. ┼NTERING THE COMMAND LINE:
  36. ╘HIS IS JUST LIKE ENTERING A COMMAND LINE IN THE ┬┴╙╔├ IMMEDIATE MODE.  ╙EVERAL COMMANDS CAN BE USED, SEPARATED BY COLONS.  ╠OOPS CAN BE CONSTRUCTED USING ╞╧╥-╬┼╪╘ OR ─╧-╠╧╧╨/┼╪╔╘.  ─ECISIONS CAN ME MADE USING ╔╞/╘╚┼╬/┼╠╙┼.  ╨LEASE NOTE THAT YOU ARE NOT RESTRICTED TO THE 160 CHARACTER LIMIT ALLOWED BY THE ┬┴╙╔├ SCREEN EDITOR.  239 CHARACTERS IS AVAILABLE, MINUS THE LENGTH OF THE BOOT MESSAGE (IF ANY).  ┘OU MAY USE ABBREVIATED ┬┴╙╔├ COMMANDS IF NECESSARY.  ╧F COURSE, THE ┬┴╙╔├ COMMANDS YOU ARE GOING TO USE MOST OFTEN IS ┬╧╧╘ "FILENAME" ┬╠╧┴─ "FILENAME", ╙┘╙ AND ╥╒╬ "FILENAME".
  37.  
  38. ╔T IS IMPORTANT TO USE GOOD SENSE WHEN CONSTRUCTING A COMMAND LINE.  ╥EMEMBER THAT YOU ARE LIMITED TO ┬┴╙╔├ COMMANDS LEGAL IN IMMEDIATE MODE.  ╘HIS MEANS THAT ╔╬╨╒╘, ╔╬╨╒╘#, ╟┼╘ AND ╟┼╘# ARE OUT.  ╥┼┴─/─┴╘┴, ╟╧╘╧ AND ╟╧╙╒┬ WON'T WORK BECAUSE THE COMMAND LINE DON'T CONTAIN LINE NUMBERS.
  39.  
  40. ┴LSO BE CAREFUL WHEN USING ╔╞-╘╚┼╬.  ╘HE COMMAND LINE AFTER THE ╘╚┼╬ STATEMENT WILL BE EXECUTED ╧╬╠┘ IF THE CRITERIA SET IN THE ╔╞ STATEMENT IS TRUE.  ╠ET'S SAY THAT YOU WANT TO SET FAST MODE IF THE COMPUTER IS BOOTED WITH THE 80 COLUMN SCREEN ACTIVE AND THEN RUN A PROGRAM.  ┘OU MIGHT TRY THIS:
  41.  
  42. IF RGR (0)=5 THEN FAST:RUN "PROGRAM"
  43.  
  44. ╘HIS WILL SEEM TO WORK PERFECTLY IN 80 COLUMNS, BUT THE PROGRAM WON'T BE RUN IN 40 COLUMNS, WHY?  ╘HE COMMANDS AFTER ╘╚┼╬ WILL BE EXECUTED ONLY IF THE CONDITIONS IN THE ╔╞ STATEMENTS IS TRUE.  ╘HE LINE BELOW WILL CURE THE PROBLEM:
  45.  
  46. IF RGR (0)=5 THEN FAST:RUN "PROGRAM":ELSE RUN "PROGRAM"
  47.  
  48. ┘OU MUST TELL THE COMPUTER THAT YOU WANT TO RUN THE PROGRAM WHETHER OR NOT THE 80 COLUMN SCREEN IS ACTIVE.  ┴GAIN, PLEASE NOTE THAT ANY COMMANDS FOLLOWING A ┼╠╙┼ STATEMENT WILL BE EXECUTED ╧╬╠┘ OF THE CONDITIONS IN THE ╔╞ STATEMENT IS ╞┴╠╙┼.  ╘HIS MEANS THAT IF SEVERAL COMMANDS IS TO BE EXECUTED IN EITHER CASE AFTER AN ╔╞-╘╚┼╬áCOMMAND, THEY MUST ALL BE INCLUDED TWICE; ONCE AFTER THE ╘╚┼╬ COMMAND, AND ONCE AFTER THE ┼╠╙┼ COMMAND.  ╧F COURSE, YOU MAY CONSIDER WRITING A NORMAL ┬┴╙╔├ PROGRAM WHICH IS RUN BY A SIMPLE RUN "FILENAME" COMMAND IN THE BOOT SECTOR.
  49.  
  50. ├ONTROL CODES MAY BE ENTERED AS PART OF THE COMMAND LINE, BUT ONLY INSIDE QUOTES.  ├ONTROL CHARACTERS OUTSIDE QUOTES WILL INVOKE A ╙┘╬╘┴╪ ┼╥╥╧╥.   ┘OU MAY NOTICE THAT TYPING A QUOTE CHARACTER WON'T INVOKE "QUOTE MODE".  ╥ATHER, IF YOU WANT TO INCLUDE CURSOR CONTROL, INSERT, DELETE, HOME, CLEAR OR RETURN CODES, HOLD DOWN ┴╠╘ AND PRESS THE APPROPRIATE KEY.  ┴LSO PLEASE READ ┴PPENDIX ┼.
  51.  
  52. ╫HEN THE COMMAND LINE IS ENTERED, PRESS ╥┼╘╒╥╬ TO WRITE YOUR BOOT SECTOR TO DISK.  ┬EFORE DOING SO HOWEVER, THE COMPUTER WILL ASK YOU IF ITS ╧╦ TO PROCEED.
  53.  
  54. ╘RICKS AND TIPS:
  55. ┘OU MAY FIND IT VERY USEFUL TO BE ABLE TO BOOT A PROGRAM FROM ANY DISK DRIVE.  ╨┼┼╦ING ADDRESS 186 WILL ENABLE YOU TO DO SO.  ╫HEN THE BOOT SECTOR IS EXECUTED, THIS LOCATION WILL HOLD THE DEVICE NUMBER USED.  ╞OR EXAMPLE RUNNING A ┬┴╙╔├áPROGRAM FROM ANY DISK DRIVE IS DONE LIKE THIS:
  56.  
  57. RUN "PROGRAM",U(PEEK(186))
  58.  
  59. ╨LEASE NOTE THE USE OF PARENTHESES.  ╘HE ╨┼┼╦ COMMAND MUST BE ENCLOSED IN PARENTHESES FOR THE ╒ SPECIFIER TO WORK.
  60.  
  61. ┴LL SOFTWARE MIGHT NOT BE ABLE TO RUN OFF ANY OTHER DISK DRIVE THAN DEVICE 8.  ╘O CIRCUMVENT THIS SLOPPY PROGRAMMING PRACTICE, YOU MAY SIMPLY CHANGE OR SWAP DEVICE NUMBERS.  ╨LEASE REFER TO YOUR DISK DRIVE MANUAL FOR THE COMMAND SEQUENCE NEEDED.  ╙WAPPING DEVICE NUMBERS, SAY BETWEEN DEVICE NUMBERS 8 AND 9 IS DONE BY TEMPORARILY SETTING DEVICE 9 TO, SAY, 30, CHANGING DEVICE 8 TO 9, AND THEN CHANGING THE DISK DRIVE NOW USING DEVICE NUMBER 30 TO 8.
  62.  
  63. ┼─╔╘ ├╧══┴╬─ ╠╔╬┼:
  64. ┘OU MAY WANT TO EDIT A COMMAND LINE BOOT SECTOR FOR DEBUGGING PURPOSES OR OTHER REASONS.  ╘HE BOOT SECTOR WILL BE READ OFF THE DISK AND A CHECK IS MADE TO ESTABLISH IF A VALID BOOT SECTOR REALLY EXIST AND THAT IT CONTAINS A COMMAND LINE.  ╔F EVERYTHING IS FOUND TO BE ╧╦, EDITING THE COMMAND LINE IS JUST LIKE CREATING IT FOR THE FIST TIME.  ╨LEASE REFER TO THE SECTION ABOUT CREATION OF A BOOT SECTOR ABOVE.  ╘HE BOOT MESSAGE CANNOT BE EDITED.
  65.  
  66. ╥╒╬/64 ┬╧╧╘ ╙┼├╘╧╥:
  67. ╘HIS SELECTION WILL CREATE A BOOT SECTOR WHICH WILL LOAD A 64 MODE PROGRAM INTO COMPUTER MEMORY, SWITCH TO 64 MODE, AND RUN IT.  ╔F YOU HAVE A 1571 OR 1581 DISK DRIVE, THE 128 BURST LOAD WILL BE ACTIVE, AND WILL LOAD YOUR PROGRAM MANY TIMES FASTER THAN IN 64 MODE.  ╘HE PROGRAM TO BE LOADED MUST BE A ┬┴╙╔├ PROGRAM OR A ═╠ PROGRAM WHICH IS STARTED WITH A ╥╒╬ COMMAND.
  68.  
  69. ╘HE BOOT SECTOR WILL WORK WITH DRIVES OF ANY DEVICE NUMBER.  ╚OWEVER, THE PROGRAM YOU LOAD MIGHT NOT ME ABLE TO DO THIS.
  70.  
  71. ╨LEASE NOTE THAT THE BOOT SECTOR CAN'T SAFELY HANDLE PROGRAMS BIGGER THAN 153 BLOCKS.  ╚OWEVER, IT IS WORTH TRYING BIGGER PROGRAMS, AS THEY MAY VERY WELL WORK, ESPECIALLY PROGRAMS OF UP TO 201 BLOCKS.  ╘HE BOOT SECTOR CAN'T HANDLE LARGE PROGRAM AS WELL AS THE ═AIN ═ENU ├64 OPTIONS BECAUSE OF MEMORY CONSTRAINTS.  ╙OME ╥┴═ UNDER THE 64 MODE ╥╧═S AND ╔/╧ IS CORRUPTED DURING SETUP OF THE 64 MODE.
  72.  
  73. ┘OU WILL BE WARNED IF A BOOT SECTOR IS ALREADY PRESENT ON THE DISK, OR IF THE BOOT SECTOR IS TAKEN BY A PROGRAM OR OTHER DATA.
  74.  
  75. ┬ESIDES ENTERING THE FILE NAME TO BE LOADED, YOU ARE ASKED IF YOU WANT TO RESET THE 1571 DRIVE.  ╥ESETTING THE 1571 WILL SWITCH IT TO 1541 MODE WHICH MAY ME NECESSARY TO RETAIN COMPATIBILITY WITH THE SOFTWARE YOU ARE USING.  ╔F YOU WANT TO ENJOY THE DOUBLE SIDED MODE ON THE 1571 IN 64 MODE, SELECT ╬╧╘ TO RESET THE DRIVE.  ╔F YOU HAVE ╩IFFY─OS INSTALLED IN YOUR SYSTEM, YOU SHOULD RESET THE DRIVE IN ANY CASE, SINCE ╩IFFY─OS WILL BE ACTIVE ONLY IF THE DRIVE IS OPERATING IN 1541 MODE, WHILE STILL BEING ABLE TO USE DOUBLE SIDED DISKS.  ╔F YOU ELECT TO RESET THE 1571 AND THE DISK IS LATER BOOTED FROM ANOTHER DRIVE TYPE, THE ERROR LIGHT WILL FLASH.  ╚OWEVER, THIS IS WITHOUT HARMFUL SIDE-EFFECTS.
  76.  
  77. ┘OU WILL BE ASKED IF IT IS ╧╦áTO PROCEED, AND THE BOOT SECTOR WILL THEN BE WRITTEN TO DISK.
  78.  
  79. ╠╧┴─ "",X,1/64 ┬╧╧╘:
  80. ╘HIS SELECTION WILL CREATE A BOOT SECTOR THAT SWITCHES THE COMPUTER TO 64 MODE, AND THEN PERFORMS A LOAD COMMAND SIMILAR TO ╠╧┴─ "PROGRAM",8,1.  ┘OU ARE NOT REQUIRED TO USE DEVICE 8 HOWEVER, THE BOOT SECTOR WILL WORK WITH ALL DEVICE NUMBERS.  ╘HE SOFTWARE YOU ARE USING MIGHT NOT BE ABLE TO WORK WITH SUCH VARIETY OF DEVICE NUMBERS THOUGH.  ╘HE BOOT SECTOR CAN HANDLE PROGRAMS OF UP TO 201 BLOCKS.
  81.  
  82. ┘OU WILL BE WARNED IF A BOOT SECTOR IS ALREADY PRESENT ON THE DISK, OR IF THE BOOT SECTOR IS TAKEN BY A PROGRAM OR OTHER DATA.
  83.  
  84. ┘OU WILL BE ASKED TO ENTER A FILE NAME TO BE LOADED BY THE BOOT SECTOR CODE.  ╧PTIONALLY, YOU MAY ALSO ENTER A COMMAND LINE OF UP TO 12 CHARACTERS TO BE EXECUTED AFTER THE PROGRAM HAS BEEN LOADED.  ╘YPICALLY, YOU WOULD USE ╥╒╬ OR ╙┘╙ TO START THE PROGRAM.  ╨LEASE NOTE THAT YOU DON'T HAVE TO ADD A RETURN CHARACTER TO THE COMMAND, THE BOOT SECTOR WILL EXECUTE THE COMMAND LINE AUTOMATICALLY.  ╔F THE PROGRAM IS AUTO-RUNNING, MEANING THAT IT RUNS BY ITSELF WITHOUT THE NEED FOR A ╥╒╬ OR ╙┘╙ CALL, PRESS ╥┼╘╒╥╬ WITHOUT ENTERING ANYTHING.
  85.  
  86. ┘OU'LL ALSO BE ASKED IF YOU WANT TO RESET THE 1571 DRIVE.  ╥ESETTING THE 1571 WILL SWITCH IT TO 1541 MODE WHICH MAY ME NECESSARY TO RETAIN COMPATIBILITY WITH THE SOFTWARE YOU ARE USING.  ╔F YOU WANT TO ENJOY THE DOUBLE SIDED MODE ON THE 1571 IN 64 MODE, SELECT ╬╧╘ TO RESET THE DRIVE.  ╔F YOU HAVE ╩IFFY─OS INSTALLED IN YOUR SYSTEM, YOU SHOULD RESET THE DRIVE IN ANY CASE, SINCE ╩IFFY─OS WILL BE ACTIVE ONLY IF THE DRIVE IS OPERATING IN 1541 MODE, WHILE STILL BEING ABLE TO USE DOUBLE SIDED DISKS.  ╔F YOU ELECT TO RESET THE 1571 AND THE DISK IS LATER BOOTED FROM ANOTHER DRIVE TYPE, IT WON'T PRODUCE ANY SIDE-EFFECTS.
  87.  
  88. ┘OU WILL BE ASKED IF IT IS ╧╦áTO PROCEED, AND THE BOOT SECTOR WILL THEN BE WRITTEN TO DISK.
  89.  
  90. ┬╧╧╘ ╘╧ ╞╔╠┼:
  91. ╘HIS FEATURE READS THE BOOT SECTOR OFF A DISK AND SAVES IT AS A ╨╥╟ FILE.  ╔T MIGHT BE USEFUL TO USE THE ╨╥╟ FILE AS A BACKUP COPY OF THE BOOT SECTOR, ESPECIALLY IF YOU WANT TO REPLACE THE ORIGINAL BOOT SECTOR.  ╨LEASE NOTE THAT ONLY TRACK 0, SECTOR 1 WILL BE SAVED.  ═ULTISECTOR BOOT AREAS CAN'T BE SAVED BY THIS UTILITY.  ╔F IN DOUBT, PLEASE USE THE ┴NALYZE ┬OOT ╙ECTOR OPTION TO SEE IF ADDITIONAL BOOT SECTORS ARE PRESENT.
  92.  
  93. ╘HE FILE CREATED BY THIS UTILITY WILL BE FULLY EXECUTABLE.  ╘HAT IS, RATHER THAN BOOTING THE DISK, YOU MAY NOW BOOT THE ╨╥╟ FILE:
  94.  
  95. BANK 15:BOOT "BOOTFILE"
  96.  
  97. ╙OMETIMES, THIS APPROACH WON'T WORK.  ╨LEASE ANALYZE THE BOOT SECTOR YOU ARE GOING TO CONVERT AND SEE IF A ╨╥╟ FILE IS LOADED BY THE BOOT SECTOR.  ╘O MAKE THE BOOTFILE WORK IS SUCH CASES, USE THE FOLLOWING COMMAND SYNTAX:
  98.  
  99. BLOAD "PRGFILE",B0:BANK 15:BOOT"BOOTFILE"
  100.  
  101. ╘HE ABOVE COMMANDS MAY EASILY BE USED AS PART OF THE COMMAND LINE IN A CUSTOM BOOT SECTOR CREATED BY THE ├REATE UTILITY.  ╞OR EXAMPLE, YOU MAY WANT TO SEND COMMANDS TO A PRINTER INTERFACE OR CHANGE DISK DEVICE NUMBERS BEFORE BOOTING YOUR SOFTWARE.  ╨LEASE NOTE THAT A BOOTFILE WILL OVERWRITE THE BOOT SECTOR IN THE COMPUTER'S MEMORY WHEN EXECUTED.  ╔T IS THEREFORE NOT POSSIBLE FOR A CUSTOM BOOT SECTOR TO LOAD OR BOOT A BOOTFILE AND THEN RETURN FOR FURTHER ┬┴╙╔├ COMMANDS.  ╘HIS CONDITION WILL INVOKE A ╙┘╬╘┴╪ ┼╥╥╧╥, OR COULD EVEN CRASH THE SYSTEM.  ╘HE EXECUTION OF THE BOOTFILE SHOULD BE EXECUTED ╠┴╙╘ IN A CUSTOM BOOT SECTOR COMMAND LINE.
  102.  
  103. ╘HE TRANSFER PROCESS BEGINS BY READING THE BOOT SECTOR OFF THE DISK IN THE DRIVE.  ┘OU'LL THEN BE PROMPTED FOR A FILE NAME, THEN THE TARGET DISK, A DISK WHERE TO STORE THE RESULTING FILE.  ╘HE TARGET DISK MUST BE PUT INTO THE SAME DRIVE THAT WAS USED TO READ THE BOOT SECTOR.
  104.  
  105. ╞╔╠┼ ╘╧ ┬╧╧╘:
  106. ╘O DO THE REVERSE OF THE ABOVE, USE THIS UTILITY.  ┴ ╨╥╟ FILE IS READ FROM DISK AND ITS CONTENTS IS PLACED IN THE BOOT SECTOR.  ╘HE COMBINATION OF THE BOOT TRANSFER UTILITIES MAY BE USED FOR ARCHIVAL PURPOSES OR FOR TRANSFERRING BOOT SECTORS BETWEEN DISSIMILAR DRIVE TYPES.  ╘HE UTILITY CAN'T HANDLE MULTISECTOR BOOT AREAS, FILES LARGER THAN 256 BYTES IS TRUNCATED.
  107.  
  108. ╘HIS UTILITY MAY EQUALLY WELL BE USED TO ENABLE A BOOT SECTOR ENTIRELY OF YOUR OWN DESIGN, WHERE YOU YOURSELF HAVE WRITTEN THE ═╠ CODE.  ┴ ╨╥╟ FILE TO BECOME A BOOT SECTOR MUST HAVE THE FOLLOWING STRUCTURE:
  109.  
  110. 1) 7 ZERO BYTES.  ┴CTUALLY, THE THREE FIRST BYTES SHOULD CONTAIN THE ┴╙├╔╔ CHARACTERS "CBM", BUT THESE ARE AUTOMATICALLY PROVIDED BY THE TRANSFER UTILITY.  ┘OU MAY SUBSTITUTE THE THREE FIRST BYTES WITH A ╩═╨ INSTRUCTION TO THE START OF THE ═╠ CODE FOR DEBUGGING PURPOSES.  ╔NCIDENTALLY, THIS IS WHAT THE ╘RANSFER ┬OOT ╘O ╞ILE UTILITY DOES.
  111. 2) ╧PTIONAL BOOT MESSAGE (┬╧╧╘ XXXX ....).  ┴LL ├┬═ ┴╙├╔╔ CHARACTERS CAN BE USED AND THE LENGTH OF THE STRING IS LIMITED ONLY BY THE SIZE OF THE BOOT SECTOR.
  112. 3) ╧NE ZERO BYTE (REGARDLESS IF YOU INCLUDE A BOOT MESSAGE OR NOT).
  113. 4) ╧PTIONAL ╨╥╟ FILE TO LOAD.  ╔F YOU PROVIDE A FILE NAME AT THIS POINT IT WILL BE LOADED INTO BANK 0 MEMORY (SIMILAR TO ┬╠╧┴─ "FILE",B0), BUT IT WILL ╬╧╘ BE CALLED.  ┴NY CALL ADDRESS MUST BE PROVIDED IN THE ═╠ CODE (SEE BELOW).
  114. 5) ╧NE ZERO BYTE (REGARDLESS IF YOU PROVIDE A FILE NAME OR NOT).
  115. 6) ═╠ CODE.  ╘HIS IS NORMAL 6502 ═╠ CODE.
  116.  
  117. ╘HE EXACT START OF THE ═╠ CODE WILL BE DETERMINED BY THE LENGTH OF THE BOOT MESSAGE AND/OR FILE NAME, IF ANY.  ╔N ITS SIMPLEST FORM, A BOOT SECTOR MAY CONTAIN 9 ZERO BYTES (NO BOOT MESSAGE OR FILE NAME) AND THE ═╠ CODE MUST THEN START AT THE 10TH BYTE.  ┴NY USE OF BOOT MESSAGE AND/OR FILE NAME WILL FORCE THE START OF THE ═╠ CODE UPWARDS.  ┴S THE COMPUTER'S BOOT BUFFER STARTS AT 2816 ($0B00), THE ACTUAL ENTRY POINT OF THE ═╠ CODE CAN BE CALCULATED USING THE FOLLOWING FORMULA:
  118.  
  119. 2816+9+LENGTH OF BOOT MESSAGE+LENGTH OF FILE NAME
  120.  
  121. ╘HE TRANSFER PROCESS IS INITIATED BY A PROMPT FOR A FILE NAME AND THE FILE WILL BE READ OFF THE DISK.  ┘OU'LL THE BE ASKED FOR THE TARGET DISK, THE DISK WHERE TO PUT THE BOOT SECTOR.  ┘OU'LL BE WARNED IF THE TARGET DISK ALREADY HAS A VALID BOOT SECTOR OR IF THE BOOT SECTOR IS OCCUPIED BY A FILE.  ╘HEN, THE BOOT SECTOR IS SAVED TO DISK.
  122.  
  123. ├╧╨┘ ┬╧╧╘ ╙┼├╘╧╥:
  124. ┘OU MAY EASILY COPY A BOOT SECTOR FROM ONE DISK TO ANOTHER.  ╨LEASE NOTE THAT ONLY TRACK 1, SECTOR 0 WILL BE TRANSFERRED.  ═ULTISECTOR BOOT AREAS CANNOT BE TRANSFERRED BY THIS ROUTINE.
  125.  
  126. ╘HE ORIGINAL BOOT SECTOR IS READ OFF THE DISK AND YOU'LL BE PROMPTED FOR THE TARGET DISK, THE DISK WHERE TO SAVE THE BOOT SECTOR.  ┘OU'LL BE WARNED IF THE TARGET DISK ALREADY HAS A VALID BOOT SECTOR OR IF THE BOOT SECTOR IS OCCUPIED BY A FILE.  ╘HEN, THE BOOT SECTOR IS SAVED TO DISK.
  127.  
  128. ╦╔╠╠ ┴╒╘╧┬╧╧╘:
  129. ┘OU MAY WANT TO REMOVE THE BOOT FEATURE FROM A DISK, AND THIS SELECTION WILL ENABLE YOU TO DO SO.  ┴CTUALLY, THIS UTILITY ISN'T VERY RADICAL, THE "CBM" BOOT SECTOR IDENTIFIER IS CHANGED TO "KBM", AND THE BOOT SECTOR IS MARKED AS FREE IN THE ┬┴═.  ╔T MAY BE A GOOD IDEA TO TRANSFER THE BOOT SECTOR TO A FILE BEFORE KILLING IT.
  130.  
  131. ┘OU'LL BE ASKED IF IT IS ╧╦ TO COMMENCE THE ACTION TO BE PERFORMED.  ╘HEN, THE BOOT SECTOR WILL BE DISABLED.  ┘OU'LL BE NOTIFIED IF A BOOT SECTOR DON'T EXIST ON THE DISK, AND NO CHANGES WILL THEN BE MADE.
  132.  
  133. ╒╬-╦╔╠╠ ┴╒╘╧┬╧╧╘:
  134. ╔F YOU HAVE KILLED A BOOT SECTOR, EITHER DELIBERATELY OR BY ACCIDENT, IT MAY BE RE-ENABLED WITH THIS FEATURE.  ╙INCE THE ╦ILL FEATURE MARKS THE BOOT SECTOR AS FREE IN THE ┬┴═, THE BOOT SECTOR MIGHT EASILY BE OVERWRITTEN BY A FILE SAVED TO DISK.  ╔T IS THEREFORE FEASIBLE TO UN-KILL A BOOT SECTOR AS SOON AS POSSIBLE.
  135.  
  136. ╘HE DISK IS CHECKED TO SEE IF IT CONTAINS A RECOVERABLE BOOT SECTOR, AND YOU'RE ASKED IF IT IS ╧╦ TO PROCEED.  ╘HE BOOT SECTOR IS THEN RESURRECTED.
  137.  
  138. ╨╥╧╘┼├╘ ╙┼├╘╧╥(╙)
  139. ╞OR A BOOT SECTOR TO BE SAFE, IT MUST BE PROTECTED BY THE ┬LOCK ┴VAILABILITY ═AP (┬┴═).  ┴LTHOUGH THE ─╧╙ COMMANDS VALIDATE WILL PROTECT THE BOOT SECTOR, THE ┬┴╙╔├ ├╧╠╠┼├╘ COMMAND AND OTHER WAYS OF VALIDATING THE DISK WILL DE-PROTECT IT AGAIN.  ╘O MAKE THINGS RIGHT, THE ┴UTOBOOT ╘OOL PROTECT COMMAND WILL RE-PROTECT THE BOOT SECTOR(S) WITHOUT VALIDATING THE WHOLE DISK.  ╨LEASE NOTE THAT MULTISECTOR BOOT AREAS ╫╔╠╠ BE PROTECTED BY THIS UTILITY.
  140.